<?php

namespace app\admin\controller;

use think\Request;

class Login
{
    //后台登录
    public function login()
    {
        //判断是否POST提交数据
        if (Request::instance()->method() == "POST") {
            //判断账号是否提交
            if (input("?post.username") && empty(input('username'))) {
                return request_tips(422, "用户名不能为空");
            }
            //判断密码是否提交
            if (input("?post.password") && empty(input('password'))) {
                return request_tips(422, "密码不能为空");
            }
            // 判断验证码是否正确
            if (input("?post.captcha") && !captcha_check(input('captcha'))) {
                return request_tips(422, "验证码错误");
            };
            //获取提交数据
            $post = input("post.");
            //获取管理员信息
            $userinfo = @getConfig('logininfo');
            //判断信息是否存在
            if ($userinfo) {
                //验证密码
                if (cms_md5($post['password']) == $userinfo['password']) {
                    //记录用户账户
                    session("name", $userinfo['username']);
                    //记录登录状态
                    session("adminlycmsauth", true);
                    //初始化更新登录信息
                    $info = [
                        "user_ip" => request()->ip(),
                        "user_time" => time()
                    ];
                    // 更新登录信息
                    setConfig("logininfo", $info);
                    return request_tips(200, "登录成功", ['path' => config('adminPath')]);
                } else {
                    return request_tips(401, "密码错误");
                }
            }
        }
    }
}
